package com.konglz.consumer.listener;

import org.springframework.amqp.rabbit.annotation.Queue;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

import java.util.Map;

/**
 * @Description
 * @Author konglz
 * @Data 2023/5/13 11:27
 */

@Component
public class SimpleMessageListener {
    /**
     * @RabbitListener: 消息监听器注解
     * 作用：
     *  1. 监听指定队列里面的消息(需要设置监听的队列 queues:不会创建队列 queuesToDeclare:队列不存在，则会创建队列)
     *  2. mq会自动将消息设置给该方法的形参（形参的名字可以随意设置）
     */
    //注意这个queues的名称对应rabbitmq队列的名称，和生产者那边的队列名称一样
    @RabbitListener(queuesToDeclare = @Queue("queue1"))
    public void springRabbitListener(String message){
        System.out.println("消费者接收到的消息：" + message);
    }


    //@RabbitListener(queues = "objectQueue")
    @RabbitListener(queuesToDeclare = @Queue("objectQueue"))
    public void listenObjectQueue(Map<String,Object> message){
        System.out.println("objectQueue接收到消息:" + message);
    }
}
